package cfig.launcher

class Launcher {
    companion object {
        fun help() {
            println("Usage:")
            println("\tota unpack <ota_file>")
            println("\tota unpack <payload_file>")
            println("\tota update <ota_file>")
            println("\tota gen    <target_file>")
        }
    }
}

fun main(args: Array<String>) {
    if (args.isEmpty()) {
        return Launcher.help()
    }
    val subArgs = args.copyOfRange(1, args.size)
    when (args[0]) {
        "unpack", "u" -> {
            println("unpacking ${subArgs.contentToString()}")
            Unpacker.main(subArgs)
        }
        "update", "+" -> {
            println("install OTA package: ${subArgs.contentToString()}")
            Updater.main(subArgs)
        }
        "gen" -> {
            println("generate OTA package from: ${subArgs.contentToString()}")
            Generator.main(subArgs)
        }
        "pack" -> {
            Packer.main(subArgs)
        }
        else -> {
            println("IllegalArgument: " + args.contentToString())
            return Launcher.help()
        }
    }
}
